GB2320089A, the contents of which are incorporated herein by reference, discloses a location system which comprises a base system and a plurality of transponders. The transponders comprise devices which may be carried by personnel or fixed to objects within an environment, such as an office. Each transponder is allocated a unique address and comprises a radio receiver for receiving polling signals from the base system. When the transponder receives a polling signal containing its address, it responds by emitting a burst of ultrasonic energy.
The base system comprises a plurality of acousto-electric transducers distributed around and fixed in the environment. When any of the transducers receives an ultrasonic signal from a transponder, this is sent to a processor of the base system for determining and registering the location of the transponder currently being polled. The processor determines the position of each transponder on the basis of the time taken for the ultrasonic energy to propagate from the transponder to the transducers which detected the ultrasonic energy.
The base system polls the transponders in accordance with a sequence with each transponder being polled in a time slot of finite duration. The polling signal is propagated electromagnetically and its propagation time from the base system to each transponder is so short in comparison with the speed of propagation of ultrasonic energy that it can be ignored. Each time slot must be sufficiently long to allow for the ultrasonic energy to propagate to all of the transducers within range and for the ultrasonic energy to decay below a threshold so as to avoid confusion with detection of the next ultrasonic burst. In a typical system, 40 milliseconds is sufficient to avoid false detection so that each time slot is 40 milliseconds in duration and hence the transducers can be polled at a maximum rate of 25 per second. There is thus a finite limit to the rate at which any transducer can be polled.
Transducers which are attached to inanimate objects, such as furniture, computers and the like, are unlikely to be moved frequently or rapidly. Accordingly, it is unnecessary, and would therefore be wasteful of resources, to poll such transducers at a relatively high rate. However, transducers worn by personnel are likely to move more often so that it is necessary to poll such transducers more frequently in order to track the location of personnel. Thus, whereas it may be desirable to track transducers worn by personnel at a rate which is typically once per second, transducers attached to inanimate objects may be polled much less frequently, for example at intervals of tens of seconds.
GB2320089 discloses a scheduling technique based on assigning to each transponder a location quality of service (LQoS) parameter or value which indicates how frequently the transponder should be polled. FIG. 1 of the accompanying drawings illustrates a simplified polling schedule for a small location system comprising a base system and four transponders. A first transponder (Bat 1) is given an LQoS of half, which indicates that Bat 1 should be polled or located in every second time slot. Another transponder (Bat 2) is assigned an LQoS of a quarter indicating that it should be polled and located in every fourth time slot. The other two transponders have a default value, in this case one eighth, of LQoS so as to fill the schedule.
The polling schedule polls the transducers in the order “Bat 1, Bat 2, Bat 1, Bat 3, Bat 1, Bat 2, Bat 1, Bat 4” and repeats this sequence continuously unless and until there is a change in the LQoS value assigned to any of the transducers.
It would be possible to exceed the capacity of such a system if too many transducers were assigned too high values of LQoS. In order to avoid such a situation, which might give rise to one or more of the transducers never being polled, the LQoS values are scaled so as to ensure that the polling capacity of the system is never exceeded.
such a scheduling technique works well for many applications, particularly for those which require a steady stream of location updates for transducers over a long period of time. An example of such an application is telephone-call-forwarding, which needs to know where each person wearing a transducer is located to a sufficient resolution such that telephone calls for each person can be directed to the nearest telephone. Such a system needs to know where each person is at any time throughout the day and polling each transducer worn by personnel every second provides sufficient location information for the telephone-call-forwarding application to work satisfactorily.
There are some applications were such a polling sequence does not provide adequate information for correct or convenient running of the application. For example, GB 2 360 356, the contents of which are incorporated herein by reference, discloses an arrangement for providing, among other things, “virtual buttons”. In a typical example of such an application, a region of space is allocated as a virtual light switch for controlling room lighting. Each transponder has a manually operated button which causes the transponder to transmit a radio message to the base system. A transponder may be placed in the region of space for controlling the room lighting and its button actuated so as, for example, to change the state of the room lighting by toggling between on and off conditions.
Unlike applications which require a stream of location measurements, for example a few seconds apart, such virtual button applications require infrequent locations with a very low latency after the transponder button has been actuated so that the system can respond sufficiently quickly for the particular application being controlled.
This may be achieved by assigning to transponders which may control virtual buttons a very high LQoS value so that such transponders would be located shortly after their buttons had been actuated. However, such a schedule would have the disadvantage that large amounts of location resources would be continuously allocated to such transponders in case they might actually be used to control a virtual button at some point in time. Also, assigning high LQoS values to a substantial number of transponders would result in scaling down of all of the transponder LQoS values so as to avoid exceeding the capacity of the location system.